/*
 * @Author: 仲灏<izhaong@outlook.com>🌶🌶🌶
 * @Date: 2021-11-28 22:57:43
 * @LastEditTime: 2021-12-15 18:41:05
 * @LastEditors: 仲灏<izhaong@outlook.com>🌶🌶🌶
 * @Description: 
 * @FilePath: /izhaong.com/docs/.vuepress/plugins/love-me/love-me.js
 */
export default () => {
  if (typeof window !== "undefined") {
    (function (e, t, a) {
      function r() {
        for (var e = 0; e < s.length; e++)
          s[e].alpha <= 0
            ? (t.body.removeChild(s[e].el), s.splice(e, 1))
            : (s[e].y--,
              (s[e].scale += 0.004),
              (s[e].alpha -= 0.013),
              (s[e].el.style.cssText =
                "left:" +
                s[e].x +
                "px;top:" +
                s[e].y +
                "px;opacity:" +
                s[e].alpha +
                ";transform:scale(" +
                s[e].scale +
                "," +
                s[e].scale +
                ") rotate(45deg);background:" +
                s[e].color +
                ";z-index:99999"));
        requestAnimationFrame(r);
      }
      function n() {
        var t = "function" == typeof e.onclick && e.onclick;

        e.onclick = function (e) {
          // 过滤指定元素
          let mark = true;
          EXCLUDECLASS &&
            e.path &&
            e.path.forEach((item) => {
              if (item.nodeType === 1) {
                typeof item.className === "string" &&
                item.className.indexOf(EXCLUDECLASS) > -1
                  ? (mark = false)
                  : "";
              }
            });

          if (mark) {
            t && t(), o(e);
          }
        };
      }
      function o(e) {
        var a = t.createElement("div");
        (a.className = "heart"),
          s.push({
            el: a,
            x: e.clientX - 5,
            y: e.clientY - 5,
            scale: 1,
            alpha: 1,
            color: COLOR,
          }),
          t.body.appendChild(a);
      }
      function i(e) {
        var a = t.createElement("style");
        a.type = "text/css";
        try {
          a.appendChild(t.createTextNode(e));
        } catch (t) {
          a.styleSheet.cssText = e;
        }
        t.getElementsByTagName("head")[0].appendChild(a);
      }
      // function c() {
      //     return "rgb(" + ~~ (255 * Math.random()) + "," + ~~ (255 * Math.random()) + "," + ~~ (255 * Math.random()) + ")"
      // }
      var s = [];
      (e.requestAnimationFrame =
        e.requestAnimationFrame ||
        e.webkitRequestAnimationFrame ||
        e.mozRequestAnimationFrame ||
        e.oRequestAnimationFrame ||
        e.msRequestAnimationFrame ||
        function (e) {
          setTimeout(e, 1e3 / 60);
        }),
        i(
          ".heart{width: 10px;height: 10px;position: fixed;background: #f00;transform: rotate(45deg);-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);}.heart:after,.heart:before{content: '';width: inherit;height: inherit;background: inherit;border-radius: 50%;-webkit-border-radius: 50%;-moz-border-radius: 50%;position: fixed;}.heart:after{top: -5px;}.heart:before{left: -5px;}"
        ),
        n(),
        r();
    })(window, document);
  }
};
